package net.tools.jspupload;

import java.util.Enumeration;
import java.util.Hashtable;

/**
 * Date:2008-9-24<br>
 *
 * @author <a href="mailto:yanghongjian@htjs.net">YangHongJian</a>
 * @version 2.0
 * @since 1.4.2
 */
public class Request {
    private Hashtable m_parameters;

    Request()
    {
        m_parameters = new Hashtable();
    }

    protected void putParameter(String s, String s1)
    {
        if(s == null)
            throw new IllegalArgumentException("The name of an element cannot be null.");
        if(m_parameters.containsKey(s))
        {
            Hashtable hashtable = (Hashtable)m_parameters.get(s);
            hashtable.put(new Integer(hashtable.size()), s1);
        } else
        {
            Hashtable hashtable1 = new Hashtable();
            hashtable1.put(new Integer(0), s1);
            m_parameters.put(s, hashtable1);
        }
    }

    public String getParameter(String s)
    {
        if(s == null)
            throw new IllegalArgumentException("Form's name is invalid or does not exist (1305).");
        Hashtable hashtable = (Hashtable)m_parameters.get(s);
        if(hashtable == null)
            return null;
        else
            return (String)hashtable.get(new Integer(0));
    }

    public Enumeration getParameterNames()
    {
        return m_parameters.keys();
    }

    public String[] getParameterValues(String s)
    {
        if(s == null)
            throw new IllegalArgumentException("Form's name is invalid or does not exist (1305).");
        Hashtable hashtable = (Hashtable)m_parameters.get(s);
        if(hashtable == null)
            return null;
        String as[] = new String[hashtable.size()];
        for(int i = 0; i < hashtable.size(); i++)
            as[i] = (String)hashtable.get(new Integer(i));

        return as;
    }


}
